package com.new2i.dao.able;

import java.util.HashMap;
import java.util.List;

import com.new2i.model.UserEntity;

/**
 * 用户UserEntity类数据库操作接口
 * @author 2i
 * @since 2015/08/21
 *
 */
public interface UserDao {

	/**
	 * 根据id查询用户
	 * 
	 * @author 2i
	 * @since 2015/09/01
	 * @param id
	 * @return
	 */
	HashMap<String, Object> getUserInfoById (int user_id);
	
	
	/**
	 * @author 周水平
	 * @param city
	 * @return
	 */
	List<UserEntity> getUserIdByCity(String city);
	
	/**
	 * 根据wxid查询用户 
	 * 
	 * @param wxid
	 * @param public_number_source
	 * @param source
	 * @return
	 */
	List<HashMap<String, Object>> selectUserInfoByWxid(String wxid,int public_number_source,int source);
	 
	/**
	 * 新增用户
	 * @author 2i
	 * @since 2015/08/27
	 * @param user
	 * @return 持久化数据库保存id的user对象
	 */ 
	UserEntity insertUser(UserEntity user);
	
	/**
	 * 通过用户user_id信息来更新emr_id
	 * 
	 * @rule user_id 从1000000000开,emr_no从10000开始自增 理论上相差99990000
	 * @since 2015/08/27
	 * @author 2i
	 * @param user_id
	 */ 
	void updateUserEmrNoByUserId(int user_id);
	
	
	/**
	 * 根据user_id修改个人信息
	 * 
	 * @since 2015/09/01
	 * @author 2i
	 * @param user
	 * @return
	 */
	int updateUserInfoByUserId(UserEntity user); 
}
